When testing the diffirent types of sound drivers I found it very hard to profile the interrupt versions of the driver.  In particular I found that at higher sample rates (44100 & 48000 hz) the the cpu of my laptop could not keep up, causing the machine to lock up.


(1) No copy, no ring buffer, no interrupt.
(2) Copy & Ring Buffer, no interrupt.
(3) Copy & Ring Buffer, Interrupt only.
(4) Copy & Ring Buffer, Interrupt & IO.
(5) Copy & Ring Buffer, Interrupt & Filtered IO.
PC_Sound 0.94:
             (1)      (2)      (3)      (4)
    0hz    100-n.a.
 8000hz    102
16000hz
32000hz    100-107
44100hz
48000hz    100-108  102-109  156-175  173-195  160-180
INTEGER & WRITING: 8 & 16 Kb blocks at about 674.0 Mb/s

Null Source Driver:
INTEGER & WRITING         8 Kb block: 632.72 Mb/s
INTEGER & WRITING        16 Kb block: 632.16 Mb/s

PC_Sound 0.90
INTEGER & WRITING         1 Kb block: 229.74 Mb/s
INTEGER & WRITING         2 Kb block: 232.99 Mb/s
INTEGER & WRITING         4 Kb block: 233.85 Mb/s
INTEGER & WRITING         8 Kb block: 228.41 Mb/s
INTEGER & WRITING        16 Kb block: 213.32 Mb/s

PC_Sound 0.91
INTEGER & WRITING         1 Kb block: 349.61 Mb/s
INTEGER & WRITING         2 Kb block: 351.58 Mb/s
INTEGER & WRITING         4 Kb block: 354.37 Mb/s
INTEGER & WRITING         8 Kb block: 355.24 Mb/s
INTEGER & WRITING        16 Kb block: 355.11 Mb/s

PC_Sound 0.92
INTEGER & WRITING         1 Kb block: 382.92 Mb/s
INTEGER & WRITING         2 Kb block: 383.41 Mb/s
INTEGER & WRITING         4 Kb block: 387.61 Mb/s
INTEGER & WRITING         8 Kb block: 389.14 Mb/s
INTEGER & WRITING        16 Kb block: 388.23 Mb/s

INTEGER & WRITING         1 Kb block: 342.68 Mb/s
INTEGER & WRITING         2 Kb block: 344.54 Mb/s
INTEGER & WRITING         4 Kb block: 346.88 Mb/s
INTEGER & WRITING         8 Kb block: 348.29 Mb/s
INTEGER & WRITING        16 Kb block: 346.19 Mb/s